package net.wanho.shop.mapper;

import net.wanho.shop.po.User;
import net.wanho.shop.vo.SearchByIdVo;
import net.wanho.shop.vo.UserVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.io.Serializable;
import java.util.List;

/**
 * <p>
 * 用户表 Mapper 接口
 * </p>
 *
 * @author 猛虎王
 * @since 2024-12-24
 */

@Mapper
public interface UserMapper {

    List<UserVo> select(User user);

    User selectById(Serializable id);

    void insert(User user);

    void update(User user);

    void deleteById(Serializable id);

    void deleteByIds(String[] split);

    User selectByUserName(String username);

    User selectByMobile(String mobile);

    void updateState(@Param("id") Integer id, @Param("state") Integer state);

    SearchByIdVo findById(Serializable id);

    void updateUser(@Param("id") Integer id, @Param("use") User user);

    void updateRole(@Param("id") Integer id, @Param("roleId") Integer roleId);

    void updatePassword(@Param("id") Integer id, @Param("password") String password);

    SearchByIdVo findBySearchId(Serializable id);
}
